Replaceable print apparatus component

ABSTRACT

A replaceable print apparatus component includes a print material reservoir, a print material within the reservoir and a sensing system including an integrated circuit configured to connect to and communicate over a digital bus. The sensing system includes at least one sensor, a digital controller, an analog to digital converter electrically coupled to the digital controller, and a memory array electrically coupled to the digital controller. The digital controller is configured to generate a clock signal for timing operations of the integrated circuit. The operations include initiating the at least one sensor based on values stored in the memory array and generating outputs of the at least one sensor via the analog to digital converter.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a U.S. National Stage Application of PCT Application No. PCT/US2019/064226, filed Dec. 3, 2019, entitled “REPLACEABLE PRINT APPARATUS COMPONENT,” which claims priority to PCT Application No. PCT/US2019/026133, filed Apr. 5, 2019, entitled “LOGIC CIRCUITRY”; PCT Application No. PCT/US2019/026152, filed Apr. 5, 2019, entitled “FLUID PROPERTY SENSOR”; PCT Application No. PCT/US2019/026161, filed Apr. 5, 2019, entitled “LOGIC CIRCUITRY”; and PCT Application No. PCT/US2018/063631, filed Dec. 3, 2018, entitled “LOGIC CIRCUITRY”; all of which are incorporated herein by reference.

BACKGROUND

Subcomponents of apparatus may communicate with one another in a number of ways. For example, Serial Peripheral Interface (SPI) protocol, Bluetooth Low Energy (BLE), Near Field Communications (NFC) or other types of digital or analog communications may be used.

Some two-dimensional (2D) and three-dimensional (3D) printing systems include one or more replaceable print apparatus components, such as print material containers (e.g., inkjet cartridges, toner cartridges, ink supplies, 3D printing agent supplies, build material supplies etc.), inkjet printhead assemblies, and the like. In some examples, logic circuitry associated with the replaceable print apparatus component(s) communicate with logic circuitry of the print apparatus in which they are installed, for example communicating information such as their identity, capabilities, status and the like. In further examples, print material containers may include circuitry to execute one or more monitoring functions such as print material level sensing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one example of a printing system.

FIG. 2 illustrates one example of a replaceable print apparatus component.

FIG. 3 illustrates one example of a print apparatus.

FIGS. 4A-4E illustrate examples of logic circuitry packages and processing circuitry.

FIG. 5A illustrates one example arrangement of a fluid level sensor.

FIG. 5B illustrates a perspective view of one example of a print cartridge.

FIG. 6 illustrates another example of a replaceable print apparatus component.

FIG. 7 illustrates another example of a printing system.

DETAILED DESCRIPTION

In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific examples in which the disclosure may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims. It is to be understood that features of the various examples described herein may be combined, in part or whole, with each other, unless specifically noted otherwise.

Some examples of applications described herein are in the context of print apparatus. Not all the examples, however, are limited to such applications, and at least some of the principles set out herein may be used in other contexts. The contents of other applications and patents cited in this disclosure are incorporated by reference.

In certain examples, Inter-integrated Circuit (I²C, or I2C, which notation is adopted herein) protocol allows at least one ‘master’ integrated circuit (IC) to communicate with at least one ‘slave’ IC, for example via a bus. I2C, and other communications protocols, communicate data according to a clock period. For example, a voltage signal may be generated, where the value of the voltage is associated with data. For example, a voltage value above X volts may indicate a logic “1” whereas a voltage value below X volts may indicate a logic “0”, where X is a predetermined numerical value. By generating an appropriate voltage in each of a series of clock periods, data can be communicated via a bus or another communication link.

Certain example print material containers have slave logic that utilize I2C communications, although in other examples, other forms of digital or analog communications could also be used. In the example of I2C communication, a master IC may generally be provided as part of the print apparatus (which may be referred to as the ‘host’) and a replaceable print apparatus component would comprise a ‘slave’ IC, although this need not be the case in all examples. There may be a plurality of slave ICs connected to an I2C communication link or bus (for example, containers of different colors of print agent). The slave IC(s) may include a processor to perform data operations before responding to requests from logic circuitry of the print system.

Communications between print apparatus and replaceable print apparatus components installed in the apparatus (and/or the respective logic circuitry thereof) may facilitate various functions. Logic circuitry within a print apparatus may receive information from logic circuitry associated with a replaceable print apparatus component via a communications interface, and/or may send commands to the replaceable print apparatus component logic circuitry, which may include commands to write data to a memory associated therewith, or to read data therefrom.

In at least some of the examples described below, a logic circuitry package is described. The logic circuitry package may be associated with a replaceable print apparatus component, for example being internally or externally affixed thereto, for example at least partially within the housing, and is adapted to communicate data with a print apparatus controller via a bus provided as part of the print apparatus.

A ‘logic circuitry package’ as the term is used herein refers to one logic circuit, or more logic circuits that may be interconnected or communicatively linked to each other. Where more than one logic circuit is provided, these may be encapsulated as a single unit, or may be separately encapsulated, or not encapsulated, or some combination thereof. The package may be arranged or provided on a single substrate or a plurality of substrates. In some examples, the package may be directly affixed to a cartridge wall. In some examples, the package may include an interface, for example including pads or pins. The package interface may be intended to connect to a communication interface of the print apparatus component that in turn connects to a print apparatus logic circuit, or the package interface may connect directly to the print apparatus logic circuit. Example packages may be configured to communicate via a serial bus interface. Where more than one logic circuit is provided, these logic circuits may be connected to each other or to the interface, to communicate through the same interface.

In some examples, each logic circuitry package is provided with at least one processor and memory. In one example, the logic circuitry package may be, or may function as, a microcontroller or secure microcontroller. In use, the logic circuitry package may be adhered to or integrated with the replaceable print apparatus component. A logic circuitry package may alternatively be referred to as a logic circuitry assembly, or simply as logic circuitry or processing circuitry.

In some examples, the logic circuitry package may respond to various types of requests (or commands) from a host (e.g., a print apparatus). A first type of request may include a request for data, for example identification and/or authentication information. A second type of request from a host may be a request to perform a physical action, such as performing at least one measurement. A third type of request may be a request for a data processing action. There may be additional types of requests. In this disclosure, a command is also a type of request.

In some examples, there may be more than one address associated with a particular logic circuitry package, which is used to address communications sent over a bus to identify the logic circuitry package which is the target of a communication (and therefore, in some examples, with a replaceable print apparatus component). In some examples, different requests are handled by different logic circuits of the package. In some examples, the different logic circuits may be associated with different addresses. For example, cryptographically authenticated communications may be associated with secure microcontroller functions and a first I2C address, while other communications may be associated with a sensor circuit and a second and/or reconfigured I2C address. In certain examples, these other communications via the second and/or reconfigured address can be scrambled or otherwise secured, not using the key used for the secure microcontroller functions.

In at least some examples, a plurality of such logic circuitry packages (each of which may be associated with a different replaceable print apparatus component) may be connected to an I2C bus. In some examples, at least one address of the logic circuitry package may be an I2C compatible address (herein after, an I2C address), for example in accordance with an I2C protocol, to facilitate directing communications between master to slaves in accordance with the I2C protocol. For example, a standard I2C communications address may be 7 or 10 bits in length. In other examples, other forms of digital and/or analog communication can be used.

FIG. 1 illustrates one example of a printing system 100. The printing system 100 includes a print apparatus 102 in communication with logic circuitry associated with a replaceable print apparatus component 104 via a communications link 106. In some examples, the communications link 106 may include an I2C capable or compatible bus (herein after, an I2C bus). Although for clarity, the replaceable print apparatus component 104 is shown as external to the print apparatus 102, in some examples, the replaceable print apparatus component 104 may be housed within the print apparatus.

The replaceable print apparatus component 104 may include, for example, a print material container or cartridge (which could be a build material container for 3D printing, a liquid or dry toner container for 2D printing, or an ink or liquid print agent container for 2D or 3D printing), which may in some examples include a print head or other dispensing or transfer component. The replaceable print apparatus component 104 may, for example, contain a consumable resource of the print apparatus 102, or a component which is likely to have a lifespan which is less (in some examples, considerably less) than that of the print apparatus 102. Moreover, while a single replaceable print apparatus component 104 is shown in this example, in other examples (as illustrated in FIG. 7), there may be a plurality of replaceable print apparatus components, for example including print agent containers of different colors, print heads (which may be integral to the containers), or the like. In other examples, the print apparatus components 104 could include service components, for example to be replaced by service personnel, examples of which could include print heads, toner process cartridges, or logic circuit package by itself to adhere to corresponding print apparatus component and communicate to a compatible print apparatus logic circuit.

FIG. 2 illustrates one example of a replaceable print apparatus component 200, which may provide the replaceable print apparatus component 104 of FIG. 1. The replaceable print apparatus component 200 includes a data interface 202 and a logic circuitry package 204. In use of the replaceable print apparatus component 200, the logic circuitry package 204 decodes data received via the data interface 202. The logic circuitry may perform other functions as set out below. The data interface 202 may include an I2C or other interface. In certain examples, the data interface 202 may be part of the same package as the logic circuitry package 204.

In some examples, the logic circuitry package 204 may be further configured to encode data for transmission via the data interface 202. In some examples, there may be more than one data interface 202 provided. In some examples, the logic circuitry package 204 may be arranged to act as a ‘slave’ in I2C communications.

FIG. 3 illustrates one example of a print apparatus 300. The print apparatus 300 may provide the print apparatus 102 of FIG. 1. The print apparatus 300 may serve as a host for replaceable components. The print apparatus 300 includes an interface 302 for communicating with a replaceable print apparatus component and a controller 304. The controller 304 includes logic circuitry. In some examples, the interface 302 is an I2C interface.

In some examples, controller 304 may be configured to act as a host, or a master, in I2C communications. The controller 304 may generate and send commands to at least one replaceable print apparatus component 200, and may receive and decode responses received therefrom. In other examples the controller 304 may communicate with the logic circuitry package 204 using any form of digital or analog communication.

The print apparatus 102, 300 and replaceable print apparatus component 104, 200, and/or the logic circuitry thereof, may be manufactured and/or sold separately. In an example, a user may acquire a print apparatus 102, 300 and retain the apparatus 102, 300 for a number of years, whereas a plurality of replaceable print apparatus components 104, 200 may be purchased in those years, for example as print agent is used in creating a printed output. Therefore, there may be at least a degree of forwards and/or backwards compatibility between print apparatus 102, 300 and replaceable print apparatus components 104, 200. In many cases, this compatibility may be provided by the print apparatus 102, 300 as the replaceable print apparatus components 104, 200 may be relatively resource constrained in terms of their processing and/or memory capacity.

FIG. 4A illustrates one example of a logic circuitry package 400 a, which may for example provide the logic circuitry package 204 described in relation to FIG. 2. The logic circuitry package 400 a may be associated with, or in some examples affixed to and/or be incorporated at least partially within, a replaceable print apparatus component 200.

In some examples, the logic circuitry package 400 a is addressable via a first address and includes a first logic circuit 402 a, wherein the first address is an I2C address for the first logic circuit 402 a. In some examples, the first address may be configurable. In other examples, the first address is a fixed address (e.g., “hard-wired”) intended to remain the same address during the lifetime of the first logic circuit 402 a. The first address may be associated with the logic circuitry package 400 a at and during the connection with the print apparatus logic circuit, outside of the time periods that are associated with a second address, as will be set out below. In example systems where a plurality of replaceable print apparatus components are to be connected to a single print apparatus, there may be a corresponding plurality of different first addresses. In certain examples, the first addresses can be considered standard I2C addresses for logic circuitry packages 400 a or replaceable print components.

In some examples, the logic circuitry package 400 a is also addressable via a second address. For example, the second address may be associated with different logic functions or, at least partially, with different data than the first address. In some examples, the second address may be associated with a different hardware logic circuit or a different virtual device than the first address. The hardware logic circuit can include analog sensor functions. In some examples, the logic circuitry package 400 a may include a memory to store the second address (in some examples in a volatile manner). In some examples, the memory may include a programmable address memory register for this purpose. The second address may have a default second address while the second address (memory) field may be reconfigurable to a different address. For example, the second address may be reconfigurable to a temporary address by a second address command, whereby it is set (back) to the default second address after or at each time period command to enable the second address. For example, the second address may be set to its default address in an out-of-reset state whereby, after each reset, it is reconfigurable to the temporary (i.e., reconfigured) address.

In some examples, the package 400 a is configured such that, in response to a first command indicative of a first time period sent to the first address (and in some examples a task), the package 400 a may respond in various ways. In some examples, the package 400 a is configured such that it is accessible via at least one second address for the duration of the time period. Alternatively or additionally, in some examples, the package may perform a task, which may be the task specified in the first command. In other examples, the package may perform a different task. The first command may, for example, be sent by a host such as a print apparatus in which the logic circuitry package 400 a (or an associated replaceable print apparatus component) is installed. As set out in greater detail below, the task may include activating a heater or obtaining a sensor reading.

Further communication may be directed to memory addresses to be used to request information associated with these memory addresses. The memory addresses may have a different configuration than the first and second address of the logic circuitry package 400 a. For example, a host apparatus may request that a particular memory register is read out onto the bus by including the memory address in a read command. In other words, a host apparatus may have a knowledge and/or control of the arrangement of a memory. For example, there may be a plurality of memory registers and corresponding memory addresses associated with the second address. A particular register may be associated with a value, which may be static or reconfigurable. The host apparatus may request that the register be read out onto the bus by identifying that register using the memory address. In some examples, the registers may include any or any combination of address register(s), parameter register(s) (for example to store gain and/or offset parameters), sensor identification register(s) (which may store an indication of a type of sensor), sensor reading register(s) (which may store values read or determined using a sensor), sensor number register(s) (which may store a number or count of sensors), version identity register(s), memory register(s) to store a count of clock cycles, memory register(s) to store a value indicative of a read/write history of the logic circuitry, or other registers.

FIG. 4B illustrates another example of a logic circuitry package 400 b. In this example, the package 400 b includes a first logic circuit 402 b, in this example, including a first timer 404 a, and a second logic circuit 406 a, in this example, including a second timer 404 b. While in this example, each of the first and second logic circuits 402 b, 406 a include its own timer 404 a, 404 b, in other examples, they may share a timer or reference at least one external timer. In a further example, the first logic circuit 402 b and the second logic circuit 406 a are linked by a dedicated signal path 408. In other examples, that are not the topic of FIG. 4B, a single integrated logic circuit may simulate the functions of the second logic circuit.

Back to FIG. 4B, in one example, the logic circuitry package 400 b may receive a first command including two data fields. A first data field is a one byte data field setting a requested mode of operation. For example, there may be a plurality of predefined modes, such as a first mode, in which the logic circuitry package 400 b is to ignore data traffic sent to the first address (for example, while performing a task), and a second mode in which the logic circuitry package 400 b is to ignore data traffic sent to the first address and to transmit an enable signal to the second logic circuit 406 a, as is further set out below. The first command may include additional fields, such as an address field and/or a request for acknowledgement.

The logic circuitry package 400 b is configured to process the first command. If the first command cannot be complied with (for example, a command parameter is of an invalid length or value, or it is not possible to enable the second logic circuit 406 a), the logic circuitry package 400 b may generate an error code and output this to a communication link to be returned to host logic circuitry, for example in the print apparatus.

If, however, the first command is validly received and can be complied with, the logic circuitry package 400 b measures the duration of the time period included in the first command, for example utilizing the timer 404 a. In some examples, the timer 404 a may include a digital “clock tree”. In other examples, the timer 404 a may include an RC circuit, a ring oscillator, or some other form of oscillator or timer. In yet other examples, the timer may include a plurality of delay circuits each of which is set to expire after a certain time period, whereby depending on the timer period indicated in a first command, the delay circuit is chosen.

In this example, in response to receiving a valid first command, the first logic circuit 402 b enables the second logic circuit 406 a and effectively disables the first address, for example by tasking the first logic circuit 402 b with a processing task. In some examples, enabling the second logic circuit 406 a includes sending, by the first logic circuit 402 b, an activation signal to the second logic circuit 406 a. In other words, in this example, the logic circuitry package 400 b is configured such that the second logic circuit 406 a is selectively enabled by the first logic circuit 402 b. The first logic circuit 402 b is configured to use the first timer 404 a to determine the duration of the enablement, that is, to set the time period of the enablement.

In this example, the second logic circuit 406 a is enabled by the first logic circuit 402 b sending a signal via a signal path 408, which may or may not be a dedicated signal path 408, that is, dedicated to enable the second logic circuit 406 a. In one example, the first logic circuit 402 b may have a dedicated contact pin or pad connected to the signal path 408, which links the first logic circuit 402 b and the second logic circuit 406 a. In a particular example, the dedicated contact pin or pad may be a General Purpose Input/Output (a GPIO) pin of the first logic circuit 402 b. The contact pin/pad may serve as an enablement contact of the second logic circuit 406 a.

In this example, the second logic circuit 406 a is addressable via at least one second address. In some examples, when the second logic circuit 406 a is activated or enabled, it may have an initial, or default, second address, which may be an I2C address or have some other address format. The second logic circuit 406 a may receive instructions from a master or host logic circuitry to reconfigure the initial second address to a temporary second address. In some examples, the temporary second address may be an address which is selected by the master or host logic circuitry. This may allow the second logic circuit 406 a to be provided in one of a plurality of packages 400 on the same I2C bus which, at least initially, share the same initial second address. This shared, default, address may later be set to a specific temporary address by the print apparatus logic circuit, thereby allowing the plurality of packages to have different second addresses during their temporary use, facilitating communications to each individual package. At the same time, providing the same initial second address may have manufacturing or testing advantages.

In some examples, the second logic circuit 406 a may include a memory. The memory may include a programmable address register to store the initial and/or temporary second address (in some examples in a volatile manner). In some examples, the second address may be set following, and/or by executing, an I2C write command. In some examples, the second address may be settable when the enablement signal is present or high, but not when it is absent or low. The second address may be set to a default address when an enablement signal is removed and/or on restoration of enablement of the second logic circuit 406 a. For example, each time the enable signal over the signal path 408 is low, the second logic circuit 406 a, or the relevant part(s) thereof, may be reset. The default address may be set when the second logic circuit 406 a, or the relevant part(s) thereof, is switched out-of-reset. In some examples, the default address is a 7-bit or 10-bit identification value. In some examples, the default address and the temporary second address may be written in turn to a single, common, address register. For example, while the first address of the first logic circuit is different for each different associated print material (e.g., different color inks have different first addresses), the second logic circuits can be the same for the different print materials and have the same initial second address.

In the example illustrated in FIG. 4B, the second logic circuit 406 a includes a first array 410 of cells and at least one second cell 412 or second array of second cells of a different type than the cells of the first array 410. In some examples, the second logic circuit 406 a may include additional sensor cells of a different type than the cells of the first array 410 and the at least one second cell 412. Each of the plurality of sensor types may be identifiable by a different sensor ID, while each cell in a cell array of the same type may also be identifiable by sensor ID. The sensor ID may include both the sensor type ID to select the array or type and the sensor cell ID to select the cell in the selected type or array, whereby the latter may also be called “sub-”ID. The sensor IDs (including the sub-IDs) may include a combination of addresses and values, for example register addresses and values. The addresses of the sensor cell array ID and the sensor cell ID may be different. For example, an address selects a register that has a function to select a particular sensor or cell, and in the same transaction, the value selects the sensor or cell, respectively. Hence, the second logic circuit may include registers and multiplex circuitry to select sensor cells in response to sensor IDs. In examples where there is only one cell of a certain sensor type, one sensor ID may be sufficient to select that cell. At the same time, for that single sensor cell, different sensor “sub-”IDs will not affect the sensor cell selection because there is only one sensor cell. In this disclosure, sensor ID parameters are described. A sensor ID parameter may include a sensor ID. A sensor ID parameter may include a sensor type ID or a sensor cell ID. The same sensor ID (e.g., to select a sensor type) and different sensor sub-IDs (e.g., to select a sensor cell) may be used to select different sensor cells. The sensor ID parameters can include only the sensor sub-ID, for example where the sensor type has been previously set so that only the sensor cell needs to be selected.

The first cells 416 a-416 f, 414 a-414 f and the at least one second cell 412 can include resistors. The first cells 416 a-416 f, 414 a-414 f and the at least one second cell 412 can include sensors. In one example, the first cell array 410 includes a print material level sensor and the at least one second cell 412 includes another sensor and/or another sensor array, such as an array of strain gauges. Further sensor types may include temperature sensors, resistors, diodes, crack detectors (e.g., crack sense resistors), etc. In this disclosure, different sensor types may also be referred to as different sensor classes. As mentioned, earlier, this disclosure encompasses alternative examples of logic circuitry packages without the described analog sensor cell arrays, whereby responses may be generated based on class parameters (i.e., sensor ID parameters) without using a physical sensor cell for generating the output. A sensor selection or sensor ID may also be referred to as class selection.

In this example, the first cell array 410 includes a sensor configured to detect a print material level of a print supply, which may in some examples be a solid but in examples described herein is a liquid, for example, an ink or other liquid print agent. The first cell array 410 may include a series of temperature sensor cells (e.g., cells 414 a-414 f) and a series of heating elements (e.g., cells 416 a-416 f), for example similar in structure and function as compared to the level sensor arrays described in WO2017/074342, WO2017/184147, and WO2018/022038. In this example, the resistance of a resistor cell 414 is linked to its temperature. The heater cells 416 may be used to heat the sensor cells 414 directly or indirectly using a medium. The subsequent behavior of the sensor cells 414 depends on the medium in which they are submerged, for example whether they are in liquid (or in some examples, encased in a solid medium) or in air. Those which are submerged in liquid/encased may generally lose heat quicker than those which are in air because the liquid or solid may conduct heat away from the resistor cells 414 better than air. Therefore, a liquid level may be determined based on which of the resistor cells 414 are exposed to the air, and this may be determined based on a reading of their resistance following (at least the start of) a heat pulse provided by the associated heater cell 416. In one example, temperature sensor cells 414 a-414 f are used for print material level sensing, whereas other temperature sensors, of a different type, may be used to detect an ambient and/or fluid temperature.

In some examples, each sensor cell 414 and heater cell 416 are stacked with one being directly on top of the other. The heat generated by each heater cell 416 may be substantially spatially contained within the heater element layout perimeter, so that heat delivery is substantially confined to the sensor cell 414 stacked directly above the heater cell 416. In some examples, each sensor cell 414 may be arranged between an associated heater cell 416 and the fluid/air interface.

In this example, the second cell array 412 includes a plurality of different cells that may have a different function such as different sensing function(s). For example, the first and second cell array 410, 412 may include different resistor types. Different cells arrays 410, 412 for different functions may be provided in the second logic circuit 406 a. More than two different sensor types may be provided, for example three, four, five or more sensor types, may be provided, wherein each sensor type may be represented by one or more sensor cells. Certain cells or cell arrays may function as stimulators (e.g., heaters) or reference cells, rather than as sensors.

FIG. 4C illustrates an example of how a first logic circuit 402 c and a second logic circuit 406 b of a logic circuitry package 400 c, which may have any of the attributes of the circuits/packages described above, may connect to an I2C bus and to each other. As is shown in the Figure, each of the circuits 402 c, 406 b has four pads (or pins) 418 a-418 d connecting to the Power, Ground, Clock, and Data lines of an I2C bus. In another example, four common connection pads are used to connect both logic circuits 402 c, 406 b to four corresponding connection pads of the print apparatus controller interface. It is noted that in some examples, instead of four connection pads, there may be fewer connection pads. For example, power may be harvested from the clock pad; an internal clock may be provided; or the package could be grounded through another ground circuit; so that, one or more of the pads may be omitted or made redundant. Hence, in different examples, the package could use only two or three interface pads and/or could include “dummy” pads.

Each of the circuits 402 c, 406 b has a contact pin 420, which are connected by a common signal line 422. The contact pin 420 of the second circuit serves as an enablement contact thereof.

In this example, each of the first logic circuit 402 c and the second logic circuit 406 b include a memory 423 a, 423 b. The memory 423 a of the first logic circuit 402 c stores information including cryptographic values (for example, a cryptographic key and/or a seed value from which a key may be derived) and identification data and/or status data of the associated replaceable print apparatus component. In some examples, the memory 423 a may store data representing characteristics of the print material, for example, any part, or any combination of its type, color, color map, recipe, batch number, age, etc. The first logic circuit 402 c may be, or function as, a microcontroller or secure microcontroller.

In this example, memory 423 b of the second logic circuit 406 b includes a programmable address register to contain an initial address of the second logic circuit 406 b when the second logic circuit 406 b is first enabled and to subsequently contain a new (temporary) second address (in some examples in a volatile manner) after that new second address has been communicated by the print apparatus. The new, e.g., temporary, second address may be programmed into the second address register after the second logic circuit 406 b is enabled, and may be effectively erased or replaced at the end of an enablement period. In some examples, the memory 423 b may further include programmable registers to store any, or any combination of a read/write history data, cell (e.g., resistor or sensor) count data, Analog to Digital converter data (ADC and/or DAC), and a clock count, in a volatile or non-volatile manner. The memory 423 b may also receive and/or store calibration parameters, such as offset and gain parameters. Use of such data is described in greater detail below. Certain characteristics, such as cell count or ADC or DAC characteristics, could be derivable from the second logic circuit instead of being stored as separate data in the memory.

In one example, the memory 423 b of the second logic circuit 406 b stores any or any combination of an address, for example the second I2C address; an identification in the form of a revision ID; and the index number of the last cell (which may be the number of cells less one, as indices may start from 0), for example for each of different cell arrays or for multiple different cell arrays if they have the same number of cells.

In use of the second logic circuit 406 b, in some operational states, the memory 423 b of the second logic circuit 406 may store any or any combination of timer control data, which may enable a timer of the second circuit, and/or enable frequency dithering therein in the case of some timers such as ring oscillators; a dither control data value (to indicate a dither direction and/or value); and a timer sample test trigger value (to trigger a test of the timer by sampling the timer relative to clock cycles measureable by the second logic circuit 406 b).

While the memories 423 a, 423 b are shown as separate memories here, they could be combined as a shared memory resource, or divided in some other way. The memories 423 a, 423 b may include a single or multiple memory devices, and may include any or any combination of volatile memory (e.g., DRAM, SRAM, registers, etc.) and non-volatile memory (e.g., ROM, EEPROM, Flash, EPROM, memristor, etc.).

While one package 400 c is shown in FIG. 4C, there may be a plurality of packages with a similar or a different configuration attached to the bus.

FIG. 4D illustrates an example of processing circuitry 424 which is for use with a print material container. For example, the processing circuitry 424 may be affixed or integral thereto. As already mentioned, the processing circuitry 424 may include any of the features of, or be the same as, any other logic circuitry package of this disclosure.

In this example, the processing circuitry 424 includes a memory 426 and a first logic circuit 402 d which enables a read operation from memory 426. The processing circuitry 424 is accessible via an interface bus of a print apparatus in which the print material container is installed and is associated with a first address and at least one second address. The bus may be an I2C bus. The first address may be an I2C address of the first logic circuit 402 d. The first logic circuit 402 d may have any of the attributes of the other examples circuits/packages described in this disclosure.

The first logic circuit 402 d is adapted to participate in authentication of the print materials container by a print apparatus in which the container is installed. For example, this may include a cryptographic process such as any kind of cryptographically authenticated communication or message exchange, for example based on a key stored in the memory 426, and which can be used in conjunction with information stored in the printer. In some examples, a printer may store a version of a key which is compatible with a number of different print material containers to provide the basis of a ‘shared secret’. In some examples, authentication of a print material container may be carried out based on such a shared secret. In some examples, the first logic circuit 402 d may participate in a message to derive a session key with the print apparatus and messages may be signed using a message authentication code based on such a session key. Examples of logic circuits configured to cryptographically authenticate messages in accordance with this paragraph are described in US patent publication No. 9619663.

In some examples, the memory 426 may store data including: identification data and read/write history data. In some examples, the memory 426 further includes cell count data (e.g., sensor count data) and clock count data. Clock count data may indicate a clock speed of a first and/or second timer 404 a, 404 b (i.e., a timer associated with the first logic circuit or the second logic circuit). In some examples, at least a portion of the memory 426 is associated with functions of a second logic circuit, such as a second logic circuit 406 a as described in relation to FIG. 4B above. In some examples, at least a portion of the data stored in the memory 426 is to be communicated in response to commands received via the second address, for example the earlier mentioned initial or reconfigured/temporary second address. In some examples, the memory 426 includes a programmable address register or memory field to store a second address of the processing circuitry (in some examples in a volatile manner). The first logic circuit 402 d may enable read operation from the memory 426 and/or may perform processing tasks.

The memory 426 may, for example, include data representing characteristics of the print material, for example any or any combination of its type, color, batch number, age, etc. The memory 426 may, for example, include data to be communicated in response to commands received via the first address. The processing circuitry may include a first logic circuit to enable read operations from the memory and perform processing tasks.

In some examples, the processing circuitry 424 is configured such that, following receipt of the first command indicative of a task and a first time period sent to the first logic circuit 402 d via the first address, the processing circuitry 424 is accessible by at least one second address for a duration of the first time period. Alternatively or additionally, the processing circuitry 424 may be configured such that in response to a first command indicative of a task and a first time period sent to the first logic circuit 402 d addressed using the first address, the processing circuitry 424 is to disregard (e.g., ‘ignore’ or ‘not respond to’) I2C traffic sent to the first address for substantially the duration of the time period as measured by a timer of the processing circuitry 424 (for example a timer 404 a, 404 b as described above). In some examples, the processing circuitry may additionally perform a task, which may be the task specified in the first command. The term ‘disregard’ or ‘ignore’ as used herein with respect to data sent on the bus may include any or any combination of not receiving (in some examples, not reading the data into a memory), not acting upon (for example, not following a command or instruction) and/or not responding (i.e., not providing an acknowledgement, and/or not responding with requested data).

The processing circuitry 424 may have any of the attributes of the logic circuitry packages 400 described herein. In particular, the processing circuitry 424 may further include a second logic circuit wherein the second logic circuit is accessible via the second address. In some examples, the second logic circuit may include at least one sensor which is readable by a print apparatus in which the print material container is installed via the second address. In some examples, such a sensor may include a print material level sensor. In an alternative example, the processing circuitry 424 may include a single, integral logic circuit, and one or more sensors of one or more types.

FIG. 4E illustrates another example of a first logic circuit 402 e and second logic circuit 406 c of a logic circuitry package 400 d, which may have any of the attributes of the circuits/packages of the same names described herein, which may connect to an I2C bus (Clock, Data, Power, and Ground) via respective interfaces 428 a, 428 b and to each other. In one example the respective interfaces 428 a, 428 b are connected to the same contact pad array, with only one data pad for both logic circuits 402 e, 406 c, connected to the same serial I2C bus. In other words, in some examples, communications addressed to the first and the second address are received via the same data pad.

In this example, the first logic circuit 402 e includes a microcontroller 430, a memory 432, and a timer 434. The microcontroller 430 may be a secure microcontroller or customized integrated circuitry adapted to function as a microcontroller, secure or non-secure. First logic circuit 402 e may be referred to as a memory chip controller and may be used to calibrate functions of second logic circuit 406 c based on calibration parameters stored in memory 432. For example, registers 438 of the second logic circuit 406 c may be initiated to a default state.

In this example, the second logic circuit 406 c includes a transmit/receive module 436, which receives a clock signal and a data signal from a bus to which the package 400 d is connected, data registers 438 (e.g., flip flops and/or latches), a multiplexer 440, a digital controller 442, an analog bias circuit and analog to digital converter 444, at least one sensor or cell array 446 (which may in some examples include a level sensor with one or multiple arrays of resistor elements), and a power-on reset (POR) device 448. The POR device 448 may be used to allow operation of the second logic circuit 406 c without use of a contact pin 420.

Digital controller 442 generates a clock signal for timing operations of second logic circuit 406 c. The operations may include initiating the sensor array(s) 446 and sensors 450, 452, 454 based on values stored in registers 438 and generating outputs (transmitted via transmit/receive module 436) of the sensor array(s) 446 and sensors 450, 452, 454. In one example, the digital controller 442 generates derivative clock signals from a reference clock signal for timing operations of the second logic circuit 406 c, such as operations performed by transmit/receive module 436, registers 438, and analog bias circuit and analog to digital converter 444. For example, registers 438 are accessible by read and/or write logic of the digital controller 442 to shift data into and/or out of the registers to update the state of the registers and/or to update the state of the digital bus.

The analog bias circuit and analog to digital converter 444 receives readings from the sensor array(s) 446 and from additional sensors 450, 452, 454 over a shared analog bus electrically coupled between the digital controller 442 and each of the sensor array(s) 446 and sensors 450, 452, 454. For example, the analog bias circuit may generate a constant current or a constant voltage to bias a sensor and the resultant voltage or resultant current, respectively, may be converted to a digital value by the analog to digital converter. In one example, the analog to digital converter is a successive approximation analog to digital converter that uses a derivative clock signal generated by the digital controller 442. The digital value from the analog to digital converter may be stored in a register 438 and read out (i.e., transmitted as serial data bits, or as a ‘bitstream’) over the I2C bus. The analog bias circuit and analog to digital converter 444 may utilize parameters, for example, gain and/or offset parameters, which may be stored in registers 438.

Second logic circuit 406 c also includes a test pad 441. The multiplexer 440 is electrically coupled to the digital controller 442, the sensor array(s) 446 and sensors 450, 452, 454 (e.g., via analog bias circuit and analog to digital converter 444), and the test pad 441. The multiplexer 440 may pass a selected one of a clock signal (e.g., generated by digital controller 442) and an analog sensor signal from a sensor (e.g., sensor array(s) 446 or sensor 450, 452, 454) to the test pad 441.

In this example, there are different additional single sensors, including for example at least one of a point temperature sensor 450, a crack detector 452, and/or a distributed temperature sensor 454. The point temperature sensor 450 (e.g., a thermal diode) may sense the temperature of print material (e.g., fluid) when the print material level is above the location of the point temperature sensor. The point temperature sensor 450 may sense the temperature of the air inside the component when the print material level is below the location of the point temperature sensor. In many cases, the air temperature and print material temperature will be the same. If the component has recently been transported, however, there is a chance that the component may be frozen. The air volume will warm faster than the print material volume once exposed to warmer ambient conditions. Before determining if the print material inside a component is frozen, a print system may first reference the last known print material level stored in a memory to ensure the print material level is sufficiently near or above the point temperature sensor to achieve an accurate measurement dependent on thermal conduction between the print material and the logic circuitry package where the point temperature sensor is located. In some examples, the point temperature sensor may only be read upon new component installation. The crack detector 452 may sense a structural integrity of a die on which the logic circuitry is provided. The distributed temperature sensor 454 (e.g., a temperature sensitive resistor) may sense the average temperature of print material and/or air over its length. The point and/or distributed temperature sensor may be different than the temperature sensor cells of the sensor 410 intended for fluid level sensing.

FIG. 5A illustrates an example of a possible practical arrangement of a second logic circuit embodied by a sensor assembly 500 in association with a circuitry package 502. The sensor assembly 500 may include a thin film stack and include at least one sensor array such as a fluid level sensor array. The arrangement has a high length to width aspect ratio (e.g., as measured along a substrate surface), for example being around 0.2 mm in width, for example less than 1 mm, 0.5 mm, or 0.3 mm, and around 20 mm in length, for example more than 10 mm, leading to length to width aspect ratios equal to or above approximately 20:1, 40:1, 60:1, 80:1, or 100:1. In an installed condition the length may be measured along the height. The logic circuit in this example may have a thickness of less than 1 mm, less than 0.5 mm, or less than 0.3 mm, as measured between the bottom of the (e.g., silicon) substrate and the opposite outer surface. These dimensions mean that the individual cells or sensors are small. The sensor assembly 500 may be provided on a relatively rigid carrier 504, which in this example also carries Ground, Clock, Power and Data I2C bus contacts.

FIG. 5B illustrates a perspective view of a print cartridge 512 including a logic circuitry package of any of the examples of this disclosure. The print cartridge 512 has a housing 514 that has a width W less than its height H and that has a length L or depth that is greater than the height H. A print liquid output 516 (in this example, a print agent outlet provided on the underside of the cartridge 512), an air input 518 and a recess 520 are provided in a front face of the cartridge 512. The recess 520 extends across the top of the cartridge 512 and I2C bus contacts (i.e., pads) 522 of a logic circuitry package 502 (for example, a logic circuitry package 400 a-400 d as described above) are provided at a side of the recess 520 against the inner wall of the side wall of the housing 514 adjacent the top and front of the housing 514. In this example, the data contact is the lowest of the contacts 522. In this example, the logic circuitry package 502 is provided against the inner side of the side wall. In some examples, the logic circuitry package 502 includes a sensor assembly as shown in FIG. 5A.

In other examples, a replaceable print apparatus component includes a logic circuitry package of any of the examples described herein, wherein the component further includes a volume of liquid. The component may have a height H that is greater than a width W and a length L that is greater than the height, the width extending between two sides. Interface pads of the package may be provided at the inner side of one of the sides facing a cut-out for a data interconnect to be inserted, the interface pads extending along a height direction near the top and front of the component, and the data pad being the bottom-most of the interface pads, the liquid and air interface of the component being provided at the front on the same vertical reference axis parallel to the height H direction wherein the vertical axis is parallel to and distanced from the axis that intersects the interface pads (i.e., the pads are partially inset from the edge by a distance D). The rest of the logic circuitry package may also be provided against the inner side.

It will be appreciated that placing logic circuitry within a print material cartridge may create challenges for the reliability of the cartridge due to the risks that electrical shorts or damage can occur to the logic circuitry during shipping and user handling, or over the life of the product.

A damaged sensor may provide inaccurate measurements, and result in inappropriate decisions by a print apparatus when evaluating the measurements. Therefore, a method may be used to verify that communications with the logic circuitry based on a specific communication sequence provide expected results. This may validate the operational health of the logic circuitry.

FIG. 6 illustrates another example of a replaceable print apparatus component 600. Replaceable print apparatus component 600 includes a print material reservoir 602 and a print material within the reservoir. Replaceable print apparatus component 600 also includes a sensing system 604 (e.g., a logic circuitry package) including a memory chip controller 606 and an integrated circuit 608 configured to connect to and communicate over a digital bus. Sensing system 604 may include any of the features of logic circuitry packages 400 a-400 d or of processing circuitry 424 previously described. The integrated circuit 608 may include any of the features of a second logic circuit previously described above, such as second logic circuit 406 a, 406 b, or 406 c.

The integrated circuit 608 includes an interface 610, a memory array 612, a digital controller 614, an analog to digital converter 616, an analog bias circuit 617, at least one sensor 618, a multiplexer 620, and a test pad 622. The digital controller 614 is electrically coupled to the interface 610, the memory array 612, the analog to digital converter 616 and the analog bias circuit 617. The at least one sensor 618 is electrically coupled to the analog to digital converter 616 and the analog bias circuit 617. In one example, the at least one sensor 618 is in direct contact with the print material within print material reservoir 602.

In one example, the digital controller 614 generates a clock signal for timing operations of the integrated circuit 608. The operations may include initiating the at least one sensor 618 based on values stored in the memory array 612 and generating outputs of the at least one sensor 618 via the analog to digital converter 616. In other examples, the digital controller may generate derivative clock signals from a reference clock signal for timing operations of the integrated circuit 608. For example, the digital controller may generate the clock signal to time operations of the analog to digital converter 616, the digital bus (e.g., via interface 610), and read and/or write accesses to the memory array 612 to initiate the sensing system state and/or to store results of outputs from the analog to digital converter 616.

In one example, the digital bus is an I2C serial bus and interface 610 is an I2C interface to enable the integrated circuit 608 to connect to and communicate over the I2C serial bus. The integrated circuit 608 and the memory chip controller 606 may connect to and communicate over a shared digital bus.

Memory chip controller 606 is electrically coupled to digital controller 614. In one example, the memory chip controller 606 is for sensor reference calibration, read initiation, measurement configuration, and retrieval of a digital representation of a print material level within the reservoir 602. Memory chip controller 606 may include the features of a first logic circuit previously described above, such as first logic circuit 402 a, 402 b, 402 c, 402 d, or 402 e.

Multiplexer 620 is electrically coupled to the digital controller 614, the at least one sensor 618, and the test pad 622 to pass a selected one of the clock signal (from digital controller 614) and an analog sensor signal from the at least one sensor 618 to the test pad 622.

In one example, memory array 612 includes flip flops and/or latches. In another example, memory array 612 includes registers. The registers may be initiated to a default state and accessible by read and/or write logic of the digital controller 614 to shift data into and/or out of the registers to update the state of the registers and/or to update the state of the digital bus.

The analog to digital converter 618 is configured to convert an analog signal from the at least one sensor 618 to a digital value. In one example, the analog to digital converter 618 includes a successive approximation analog to digital converter. Analog bias circuit 617 is electrically coupled to the at least one sensor 618 and the digital controller 614 to bias the at least one sensor. In one example, the analog bias circuit 617 generates a constant voltage to bias the at least one sensor 618. In another example, the analog bias circuit 617 generates a constant current to bias the at least one sensor 618.

The at least one sensor 618 may include at least one of a temperature sensor, a strain gauge, a crack detector, a print material level sensor, and a sensor configured to detect a pneumatic actuation of the print apparatus component 600. In one example, the integrated circuit 608 includes a plurality of sensors of different types (as previously described) including the at least one sensor 618. In this case, each of the plurality of sensors are electrically coupled to the digital controller (e.g., via analog to digital converter 616 and/or analog bias circuit 617). In some examples, integrated circuit 608 includes a shared analog bus electrically coupled between the digital controller 614 and each of the plurality of sensors for analog biasing and analog to digital conversion to access the state of the print material over the print material level sensor or a localized strain at a strain gauge.

In one example, the at least one sensor 618 may include an array of sensors (e.g., 414 a-414 f of FIG. 4B). Integrated circuit 608 may be a high-aspect-ratio integrated circuit in a 0.35 μm-3.3V-CMOS process. The integrated circuit 608 may include a length and a width less than the length and the sensors of the array of sensors may be distributed along the length of the integrated circuit at greater than 60 sensors per centimeter. In one example, the array of sensors includes 126 sensors. The integrated circuit 608 may also include an array of heaters (e.g., 416 a-416 f of FIG. 4B) associated with the array of sensors. In this case, each heater may be actuated for a register-based programmable time duration (e.g., stored in memory array 612) by a digital pulse generated from a clock reference conversion (e.g., by digital controller 614).

In another example, the at least one sensor 618 may include a plurality of sensor cores. Each sensor core may be configured to perform at least one of heating, thermal sensing, strain sensing, optical sensing, and memory access. The plurality of sensor cores may be used to detect a print material level within the print material reservoir 602 and/or to detect a pneumatic pneumatic actuation of the print apparatus component 600.

FIG. 7 illustrates another example of a printing system 700. Printing system 700 includes a print apparatus host logic circuit 702, a digital bus 704, and a plurality of replaceable print apparatus components 706 a-706 d. Each replaceable print apparatus component 706 a-706 d may include a different colored print material, such as cyan, magenta, yellow, and black ink. Each replaceable print apparatus component 706 a-706 d includes a logic circuitry package 708 a-708 d, respectively, which may be a logic circuitry package 400 a-400 d, processing circuitry 424, or a sensing system 604 as previously described. For example, a printing system may include the replaceable print apparatus component 600 of FIG. 6 and a further replaceable print apparatus component. The further replaceable print apparatus component may include a further print material reservoir (e.g., 602), a further print material within the further reservoir, and a further sensing system (e.g., 604) including a further integrated circuit (e.g., 608) configured to connect to and communicate over the digital bus 704.

The host logic circuit 702 and the logic circuitry packages 708 a-708 d are in communication via a common digital bus 704 (e.g., an I2C serial bus). In one mode of operation, each of the logic circuitry packages 708 a-708 d has a different first address. Therefore, each of the logic circuitry packages 708 a-708 d (and by extension, each of the replaceable print apparatus components) may be addressed uniquely by the host logic circuit 702.

In one example, a first command may be sent to a particular one of the replaceable print apparatus component logic circuitry packages 708 a-708 d (i.e., being addressed using the unique first address for that logic circuitry package), instructing the logic circuitry package to enable its (at least one) second address for a corresponding ‘first command’ time period. Therefore, that replaceable print apparatus component 708 may, for example, enable at least one second address and/or, in some examples, its associated functions. In some examples, this results in enabling a second logic circuit as described above. For example, the addressed logic circuitry package 708 may ignore (e.g., not acknowledge and/or not respond to) traffic sent to the first address of that logic circuitry package 708 for the duration of the first command time period, for example in response to the same command or a separate command. The other print apparatus components 708 may also be sent a second command resulting in them ignoring traffic sent to their first addresses for the duration of a ‘second command’ time period.

Therefore, in this way, all of the first addresses may be effectively disabled while only one second address is in communication with the digital bus 704. In other examples, more than one logic circuitry package 708 may be addressable by respective different addresses at the same time. In some examples, a first command may also result in an addressed component/package ignoring traffic sent to their first addresses for the duration of the first command time period, and/or a second command may also result in an addressed component/package being accessible via at least one second address.

To consider a particular example, a host device such as logic circuit 702 in this example wishing to communicate with a particular logic circuitry package 708 via its second address—in this example logic circuitry package 708 a—may issue commands so as to instruct the other logic circuitry packages 708 b-708 d to act in a manner which results in them ignoring traffic on the digital bus 704.

This may include the logic circuit 702 serially sending three commands addressed to a unique address of each of the other logic circuitry packages 708 b-708 d, each command specifying a first mode of operation and a time period. The first mode of operation may result in traffic on the digital bus 704 being ignored by logic circuitry packages 708 b-708 d. Next, the logic circuit 702 may send a dedicated command to the target logic circuitry package 708 a via its first address, the command specifying a second mode of operation and a time period. The second mode of operation may include an instruction resulting in traffic on the digital bus 704 sent to a first address being ignored and enablement of a second address. The first command time period and the second command time period for which traffic is ignored by different logic circuitry packages 708 may be specified to overlap with one another, in some examples based on the delay with which instructions will be received.

The host logic circuit 702 may then communicate with the selected logic circuitry package 708 a via its second address for the duration of the time period. During this time period, in some examples no other devices are ‘listening’ to the digital bus 704 and any communication protocol (including in some examples a non-I2C compliant protocol) may be used for communicating with the selected logic circuitry package 708 a via its second address. In other examples, some or all logic circuitry packages 708 a-708 d may be accessible via a second address concurrently, or a mixture of first and second addresses of respective logic circuitry packages may be accessible.

In one example, the logic circuitry packages described herein mainly include hardwired routings, connections, and interfaces between different components. In another example, the logic circuitry packages may also include at least one wireless connection, wireless communication path, or wireless interface, for internal and/or external signaling, whereby a wirelessly connected element may be considered as included in the logic circuitry package and/or replaceable component. For example, certain sensors may be wireless connected to communicate wirelessly to the logic circuit/sensor circuit. For example, sensors such as pressure sensors and/or print material level sensors may communicate wirelessly with other portions of the logic circuit. These elements, that communicate wirelessly with the rest of the logic circuit, may be considered part of the logic circuit or logic circuitry package. Also, the external interface of the logic circuitry package, to communicate with the print apparatus logic circuit, may include a wireless interface. Also, while reference may be made to power routings, power interfaces, or charging or powering certain cells, certain examples of this disclosure may include a power source such as a battery or a power harvesting source that may harvest power from data or clock signals.

Certain example circuits of this disclosure relate to outputs that vary in a certain way in response to certain commands, events and/or states. It is also explained that, unless calibrated in advance, responses to these same events and/or states may be “clipped”, for example so that they cannot be characterized or are not relatable to these commands, events and/or states. For these example circuits where the output needs to be calibrated to obtain the characterizable or relatable output, it should be understood that also before required calibration (or installation) occurred these circuits are in fact already “configured” to provide for the characterizable output, that is, all means are present to provide for the characterizable output, even where calibration is yet to occur. It may be a matter of choice to calibrate a logic circuit during manufacture and/or during customer installation and/or during printing, but this does not take away that the same circuit is already “configured” to function in the calibrated state. For example, when sensors are mounted to a reservoir wall, certain strains in that wall over the lifetime of the component may vary and may be difficult to predict while at the same time these unpredictable strains affect the output of the logic circuit. Different other circumstances such as conductivity of the print material, different packaging, in-assembly-line-mounting, etc. may also influence how the logic circuit responds to commands/events/states so that a choice may be made to calibrate at or after a first customer installation. In any of these and other examples, it is advantageous to determine (operational) calibration parameters in-situ, after first customer installation and/or between print jobs, whereby, again, these should be considered as already adapted to function in a calibrated state.

In one example, the logic circuitry package outputs count values in response to read requests. In certain examples, each separate count value is output in response to each read request. In another example, a logic circuit is configured to output a series or plurality of count values in response to a single read request. In other examples, output may be generated without a read request.

Each of the logic circuitry packages 400 a-400 d described herein may have any feature of any other logic circuitry packages 400 a-400 d described herein or of the processing circuitry 424 or sensing system 604. Any first logic circuit may have any attribute of any second logic circuit, and vice versa.

Examples in the present disclosure can be provided as methods, systems or machine readable instructions, such as any combination of software, hardware, firmware or the like. Such machine readable instructions may be included on a machine readable storage medium (including but not limited to EEPROM, PROM, flash memory, disc storage, CD-ROM, optical storage, etc.) having machine readable program codes therein or thereon.

The present disclosure is described with reference to block diagrams of devices and systems according to examples of the present disclosure. It shall be understood that at least some blocks in the block diagrams, as well as combinations thereof can be realized by machine readable instructions.

The machine readable instructions may, for example, be executed by a general purpose computer, a special purpose computer, an embedded processor or processors of other programmable data processing devices to realize the functions described in the description and diagrams. In particular, a processor or processing circuitry may execute the machine readable instructions. Thus, functional modules of the apparatus and devices (for example, logic circuitry and/or controllers) may be implemented by a processor executing machine readable instructions stored in a memory, or a processor operating in accordance with instructions embedded in logic circuitry. The term ‘processor’ is to be interpreted broadly to include a CPU, processing unit, ASIC, logic unit, or programmable gate array etc. The methods and functional modules may all be performed by a single processor or divided amongst several processors.

Such machine readable instructions may also be stored in a machine readable storage (e.g., a tangible machine readable medium) that can guide the computer or other programmable data processing devices to operate in a specific mode.

Such machine readable instructions may also be loaded onto a computer or other programmable data processing devices, so that the computer or other programmable data processing devices perform a series of operations to produce computer-implemented processing, thus the instructions executed on the computer or other programmable devices realize functions specified by block(s) in the block diagrams.

Further, the teachings herein may be implemented in the form of a computer software product, the computer software product being stored in a storage medium and comprising a plurality of instructions for making a computer device implement the methods recited in the examples of the present disclosure.

The word “comprising” does not exclude the presence of elements other than those listed in a claim, “a” or “an” does not exclude a plurality, and a single processor or other unit may fulfill the functions of several units recited in the claims.

Although specific examples have been illustrated and described herein, a variety of alternate and/or equivalent implementations may be substituted for the specific examples shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the specific examples discussed herein. Therefore, it is intended that this disclosure be limited only by the claims and the equivalents thereof. 

The invention claimed is:
 1. A replaceable print apparatus component comprising: a print material reservoir; a print material within the reservoir; and a sensing system comprising an integrated circuit configured to connect to and communicate over a digital bus, including: at least one sensor, a digital controller, an analog to digital converter electrically coupled to the digital controller, and a memory array electrically coupled to the digital controller, wherein the digital controller is configured to generate a clock signal for timing operations of the integrated circuit, the operations including: initiating the at least one sensor based on values stored in the memory array, and generating outputs of the at least one sensor via the analog to digital converter.
 2. The replaceable print apparatus component of claim 1, wherein the sensing system further comprises a memory chip controller for sensor reference calibration, read initiation, measurement configuration, and retrieval of a digital representation of a print material level within the reservoir, and wherein the integrated circuit and the memory chip controller are configured to connect to and communicate over a shared digital bus.
 3. The replaceable print apparatus component of claim 1, wherein the digital controller is configured to generate derivative clock signals from a reference clock signal for timing operations of the integrated circuit.
 4. The replaceable print apparatus component of claim 1, wherein the digital controller generates the clock signal to time operations of the analog to digital converter, the digital bus, and read and/or write accesses to the memory array to initiate the sensing system state and/or to store results of outputs from the analog to digital converter.
 5. The replaceable print apparatus component of claim 1, wherein the sensing system comprises a test pad, and wherein the integrated circuit comprises a multiplexer electrically coupled to the digital controller, the at least one sensor, and the test pad, the multiplexer to pass a selected one of the clock signal and an analog sensor signal from the at least one sensor to the test pad.
 6. The replaceable print apparatus component of claim 1, wherein the memory array comprises registers, flip flops, and/or latches.
 7. The replaceable print apparatus component of claim 6, wherein the registers are initiated to a default state and accessible by read and/or write logic of the digital controller to shift data into and/or out of the registers to update the state of the registers and/or to update the state of the digital bus.
 8. The replaceable print apparatus component of claim 1, wherein the analog to digital converter comprises a successive approximation analog to digital converter.
 9. The replaceable print apparatus component of claim 1, wherein the integrated circuit comprises an analog bias circuit electrically coupled to the at least one sensor and the digital controller to bias the at least one sensor.
 10. The replaceable print apparatus component of claim 9, wherein the analog bias circuit generates a constant voltage to bias the at least one sensor.
 11. The replaceable print apparatus component of claim 9, wherein the analog bias circuit generates a constant current to bias the at least one sensor.
 12. The replaceable print apparatus component of claim 1, wherein the integrated circuit comprises a plurality of sensors of different types including the at least one sensor, each of the plurality of sensors electrically coupled to the digital controller.
 13. The replaceable print apparatus component of claim 12, wherein the at least one sensor comprises at least one of a temperature sensor, a strain gauge, a crack detector, and a print material level sensor.
 14. The replaceable print apparatus component of claim 13, wherein the integrated circuit comprises a shared analog bus electrically coupled between the digital controller and each of the plurality of sensors for analog biasing and analog to digital conversion to access the state of the print material over the print material level sensor or a localized strain at a strain gauge.
 15. The replaceable print apparatus component of claim 1, wherein the at least one sensor is in direct contact with the print material.
 16. The replaceable print apparatus component of claim 1, wherein the at least one sensor is configured to detect a pneumatic actuation of the print apparatus component.
 17. The replaceable print apparatus component of claim 1, wherein the at least one sensor comprises an array of sensors, wherein the integrated circuit comprises an array of heaters associated with the array of sensors.
 18. The replaceable print apparatus component of claim 17, wherein each heater is actuated for a register-based programmable time duration by a digital pulse generated from a clock reference conversion.
 19. The replaceable print apparatus component of claim 1, wherein the least one sensor comprises a plurality of sensor cores, and wherein each sensor core is configured to perform at least one of heating, thermal sensing, strain sensing, optical sensing, and memory access.
 20. The replaceable print apparatus component of claim 1, further comprising: a housing having a height, a width less than the height, and a length greater than the height, the height parallel to a vertical reference axis, and the width extending between two sides; and a print material output, wherein the print material reservoir is within the housing. 